home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / programm / MM2_DEV / S / MOS / SYSCTRL.I < prev    next >
Encoding:
Text File  |  1992-02-14  |  2.8 KB  |  3 lines

  1. ⓪ IMPLEMENTATION MODULE SysCtrl;⓪ (*$Y+,N+,L-*)⓪ ⓪ (*⓪"14.02.92 TT: ToSuper, ToUser statt Supexec wg. MiNT.⓪"28.09.90 TT: ExcToScanAddr neu⓪"13.06.90 TT: EnterSupervisorMode entfernt⓪"01.05.90 TT: MSByte bei restoreTrap wird vor Vergleich ggf. gelöscht⓪"14.07.89 TT: XBRA-Installation in TRAP #4 (Kennung: "MM2Y")⓪"25.10.88 TT: CatchRemoval-Aufruf zum Restaurieren des alten TRAP 4-Vektors⓪"09.04.88 TT: trapHandler und ScanBack laufen nun auch mit 68020.⓪ *)⓪ ⓪ FROM SYSTEM IMPORT ASSEMBLER;⓪ FROM SysTypes IMPORT ScanDesc, ExcDesc;⓪ FROM MOSSupport IMPORT ToSuper, ToUser;⓪ ⓪ PROCEDURE GetScanAddr ( VAR info: ScanDesc );⓪"BEGIN⓪$ASSEMBLER⓪(MOVE.L  -(A3),A1⓪(LEA     4(A7),A0⓪(MOVE.L  A0,ScanDesc.stack(A1)      ; stack:= A7+4⓪(MOVE.L  A5,ScanDesc.link(A1)       ; link:= A5⓪(MOVE.L  (A7),ScanDesc.pc(A1)       ; pc:= RTS-Wert = (A7)⓪$END⓪"END GetScanAddr;⓪ ⓪ PROCEDURE ScanBack ( VAR info: ScanDesc ): BOOLEAN;⓪"BEGIN⓪$ASSEMBLER⓪(SUBQ.L  #4,A7⓪(JSR     ToSuper⓪(⓪(LEA     err2(PC),A0⓪(MOVE.L  8,-(A7)⓪(MOVE.L  A0,8            ; Bus error⓪(MOVE.L  12,D1⓪(MOVE.L  A0,12           ; Addr error⓪(MOVE.L  A7,D0⓪(⓪(MOVE.L  -(A3),A1⓪(MOVE.L  ScanDesc.stack(A1),A2   ; stack A7⓪(MOVE.L  ScanDesc.link(A1),A0    ; link A5⓪(CMPA.L  A2,A0           ; A5 >= A7 ?⓪(BCS     err             ; nö⓪(⓪(MOVE.L  (A0)+,ScanDesc.link(A1) ; UNLK A5⓪(MOVE.L  (A0)+,ScanDesc.pc(A1)   ; RTS-Adr⓪(MOVE.L  A0,ScanDesc.stack(A1)⓪(⓪(MOVEQ   #TRUE,D0⓪(BRA     ende⓪(⓪&err2⓪(MOVE.L  D0,A7           ; Bus/Addr-Error, SSP korrigieren⓪&err⓪(MOVEQ   #FALSE,D0⓪&ende⓪(MOVE.L  (A7)+,8            ; Bus error⓪(MOVE.L  D1,12           ; Addr error⓪(MOVE    D0,(A3)+⓪$⓪(JSR     ToUser⓪(ADDQ.L  #4,A7⓪$END⓪"END ScanBack;⓪ ⓪ ⓪ PROCEDURE ExcToScanAddr ( REF exc: ExcDesc; VAR info: ScanDesc );⓪"BEGIN⓪$ASSEMBLER⓪(; globalScan.pc:= excData.regPC;⓪(; globalScan.link:= excData.regA5.ad;⓪(; globalScan.stack:= excData.parm;⓪(MOVE.L  -(A3),A0        ;info⓪(MOVE.L  -(A3),A1        ;ref⓪(MOVE.L  ExcDesc.regPC(A1),ScanDesc.pc(A0)⓪(MOVE.L  ExcDesc.regA5(A1),ScanDesc.link(A0)⓪(MOVE.L  ExcDesc.regUSP(A1),ScanDesc.stack(A0)⓪$END⓪"END ExcToScanAddr;⓪ ⓪ END SysCtrl.⓪ ə
  2. (* $FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$00000846$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2$FFF2CAD2Ç$0000006ET.......T.......T.......T.......T.......T.......T.......T.......T.......T.......$00000250$0000003B$00000048$0000006F$000003E6$FFEFB644$000003C7$FFEFB644$000003E6$00000489$000006C1$00000250$FFEFB644$FFEFB644$00000250$FFEFB644ÉÇé*)
  3.